home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FishMarket 1.0
/
FishMarket v1.0.iso
/
fishies
/
476-500
/
disk_500
/
wiconify
/
wiconify-source.lzh
/
Source
/
wSetup.h
< prev
next >
Wrap
C/C++ Source or Header
|
1991-04-19
|
4KB
|
108 lines
/*
* WICONIFY A utility that allows you to iconify any Intuition window
* on any screen, and to open WB windows on any screen.
*
* wSetup.h Include file for structures used to commmunicate
* between the loader and handler.
*
* Copyright 1990 by Davide P. Cervone, all rights reserved.
* You may use this code, provided this copyright notice is kept intact.
*/
#include <libraries/dos.h>
#define PORTNAME WICONPORT
#define OKSIGNAL SIGBREAKF_CTRL_E
#define CANCELSIGNAL SIGBREAKF_CTRL_C
/*
* HandlerData is the structure used to pass information between
* the handler when it is loaded and the loader. It includes
* pointers to variables that the loader must initialize, and
* values of variables that the loader may need to use during the
* initialization process.
*/
struct HandlerData
{
short MajVers,MinVers; /* Handler version numbers */
long Segment; /* The loaded handler segments */
APTR ParentTask; /* The loader Process */
struct IntuitionBase **IntuitionBase; /* Libraries that must be openned */
struct GfxBase **GfxBase;
struct LayersBase **LayersBase;
struct SysBase **SysBase;
struct DOSBase **DOSBase;
struct Interrupt *Handler_Interrupt; /* The Input Device handler */
struct Menu *wMenu; /* The menus (for initialization) */
struct wMenuItem *OpenWindowMenu; /* The OpenOn submenu */
struct Image *DefaultIcon; /* The default icon image */
struct Image *DefaultScreenIcon; /* The default screen icon image */
char **HiResCLICommand; /* The HIRES NewCLI command */
char **LoResCLICommand; /* The LOWRES NewCLI command */
long *StackSize; /* The NewCLI stack size */
struct Image **DefaultImage; /* Image for icons without one */
struct Image **DefaultSelect; /* Default select image */
struct Image **DefaultMask; /* Default image mask */
struct Image **DefaultScreenImage; /* Image for screens without one */
struct Image **DefaultScreenSelect; /* Default screen select image */
struct Image **DefaultScreenMask; /* Default screen image mask */
ULONG *DefaultFlags; /* Default icon flags */
ULONG *DefaultScreenFlags; /* Default screen icon flags */
struct Ignore **IgnoreScreen; /* List of screens to ignore */
UBYTE *IconifyKey,*ActivateKey; /* Keys and qualifiers */
UWORD *IconifyQuals,*IconifyDisquals,*IconifyChange;
UWORD *ActivateQuals;
UWORD *Colors; /* default color map for screens */
/* Routines to be trapped */
void (*cOpenScreen)();
void (*CleanUp)();
void (*aOpenWindow)();
long *OldOpenWindow;
void (*aCloseWindow)();
long *OldCloseWindow;
void (*aOpenScreen)();
long *OldOpenScreen;
void (*aCloseScreen)();
long *OldCloseScreen;
void (*aSetWindowTitles)();
long *OldSetWindowTitles;
void (*aWindowToFront)();
long *OldWindowToFront;
void (*aWindowToBack)();
long *OldWindowToBack;
void (*aActivateWindow)();
long *OldActivateWindow;
void (*aBuildSysRequest)();
long *OldBuildSysRequest;
void (*aFreeSysRequest)();
long *OldFreeSysRequest;
void (*aAutoRequest)();
long *OldAutoRequest;
};
/*
* Macros to make using HandlerData easy
*/
#define VAR(x) (*(HandlerData->x))
#define var(x) (HandlerData->x)